#ifndef NETWORKTESTS_H
#define NETWORKTESTS_H

#include <QObject>

#include "common.h"

class NetworkTests : public QObject
{
    Q_OBJECT
public:
    explicit NetworkTests(QObject *parent = 0);

private:
    static const int TEST_FAILURE = -1;

    int ipAddress[4];

signals:
    void pingTestCompleted(float pingResult);
    void networkInterfaceTestCompleted(int *ipAddress);
    void DNSTestCompleted(bool testPassed);

    void DEBUG_NetworkTestsMessage(QString message);

public slots:
    void runPingTest(int *ipAddress);

    void runNetworkInterfaceTest(QString interfaceName);

    void runDNSTest();
};

#endif // NETWORKTESTS_H
